1 /* JJT: 0.2.2 */ 2 3 package mobisnap.mobile_trx; 4 5 /*** 6 * Implements unary expression 7 */ 8 public class ASTPlSqlUnaryExpression extends mobisnap.mobile_trx.SimpleNode { 9 public ASTPlSqlPrimaryExpression expr; 10 public byte sign = 0; // 0 - no sign; 1 - + ; 2 - - 11 12 public ASTPlSqlUnaryExpression(int id) { 13 super(id); 14 } 15 16 public ASTPlSqlUnaryExpression( MobisnapSQL p, int i) { 17 super( p, i); 18 id = i; 19 } 20 21 /*** Accept the visitor. **/ 22 public Object jjtAccept(MobisnapSQLVisitor visitor, Object data) { 23 return visitor.visit(this, data); 24 } 25 26 /*** 27 * Returns the value of the expression 28 * 29 * @param msql_type Specifies which type of processing should be performed 30 * MobisnapConstants.MSQL_SERVER = 1 31 * MobisnapConstants.MSQL_TENTATIVE_CLIENT = 2 32 * MobisnapConstants.MSQL_STABLE_CLIENT = 3 33 * MobisnapConstants.MSQL_RESERVATION_CLIENT = 4 34 * @param cond True if reservations associated iwth transaction should be 35 * propagated to the current transaction 36 */ 37 public Object value( int msql_type, boolean cond) throws Exception { 38 Object val = expr.value( msql_type, cond); 39 if( sign == 0) 40 return val; 41 if( sign == 1) { 42 MSQLTypeUtil.negate( val); // just to test if sign may be assigned 43 return val; 44 } else 45 return MSQLTypeUtil.negate( val); 46 } 47 48 }

This page was automatically generated by Maven